/**
 *====================================================
 * 文件名称: TallyingService.java
 * 修订记录：
 * No    日期				作者(操作:具体内容)
 * 1.    2015年09月23日	chenxy(创建:创建文件)
 *====================================================
 * 类描述：(说明未实现或其它不应生成javadoc的内容)
 */
package com.yuexunit.finance.project.service;

import java.util.List;
import java.util.Set;

import com.yuexunit.finance.project.entity.TallyingEntity;
import com.yuexunit.finance.project.entity.lexicon.TallyingStateEnum;
import com.yuexunit.page.PageCriteria;
import com.yuexunit.page.PageList;

/**
 * @ClassName: TallyingService
 * @Description: TODO(这里用一句话描述这个类的作用)
 * @author chenxy
 * @date 2015年09月23日 18:56:17
 */
public interface TallyingService {

	public Long createTallying(TallyingEntity tallyingEntity);

	public void updateTallying(TallyingEntity tallyingEntity);

	public void renovateTallying(TallyingEntity tallyingEntity);

	public void deleteTallying(Long tallyingId);

	public TallyingEntity inquireTallying(Long tallyingId);

	public TallyingEntity inquireTallyingDetail(Long tallyingId);
	
	public List<TallyingEntity> inquireTallyingList(Long recieveNoticeId);
	
	public List<TallyingEntity> inquireTallyingInProcess(Long logisticsCompanyId, Set<TallyingStateEnum> tallyStates);

	public PageList<TallyingEntity> inquireTallyingPageList(Long[] tallyingIds, Long financeId, Long recieveNoticeId, Long logisticsCompanyId, String tallyingNumber, Long clerkId, Integer[] tallyingState, Boolean sort, PageCriteria page);

	/** 监管确认数 */
	public List<Long> countWaitSupervisionTallying();

}
